// pages/pay/pay.js
/**
 * 微信支付
 * 1 哪些人 哪些账号 可以实现微信支付
 *  1 企业账号
 *  2 企业账号的小程序后台中 必须 给开发者 添加上白名单
 *    1 一个 appid 可以同时绑定多个开发者
 *    2 这些开发者就可以公用这个appid 和 它的开发权限
 * 3 支付按钮
 *  1 先判断缓存中有没有token
 *  2 没有 跳转到授权页面 进行获取token
 *  3 有token，，，
 */

import { getSetting, chooseAddress, openSetting, showModal } from '../../utils/asyncWx'

Page({

    /**
     * 页面的初始数据
     */
    data: {
        address: {},
        cart: [],
        totalPrice: 0,
        totalNum: 0

    },

    // 设置购物车状态，存储数据，重新计算合计等等
    setCart(cart) {

        /**
         * 来自cart.js 的setCart方法改造
         */
        let totalPrice = 0
        let totalNum = 0

        cart.forEach(element => {
            totalPrice += element.goods_price * element.num
            totalNum += element.num
        });

        this.setData({
            cart,
            totalPrice,
            totalNum
        })
    },

    // 支付按钮
    handleOrderPay() {

        const token = wx.getStorageSync('token');
        if (!token) {
            wx.navigateTo({
                url: '/pages/auth/auth',
                success: (result) => {

                },
                fail: () => {},
                complete: () => {}
            });
            return
        }
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function(options) {

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function() {

        const address = wx.getStorageSync('address');
        let cart = wx.getStorageSync('cart') || [];

        // 过滤商品已选中的数组
        cart = cart.filter(v => v.checked)
        this.setData({
            address
        })
        this.setCart(cart)

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function() {

    }
})